package jpa.entitys.promis.construction;

import java.io.Serializable;

import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;

import jpa.entitys.common.CommonEntity;


/**
 * The persistent class for the SYNC_COST_PROPUNIT database table.
 * 
 */
@Entity
@Table(name="VW_SYNC_COST_PROPUNIT")
@NamedQueries({
    @NamedQuery(name = "SyncCostPropunit.findAll", query = " SELECT c FROM SyncCostPropunit c "),
    @NamedQuery(name = "SyncCostPropunit.findById", query = " SELECT c FROM SyncCostPropunit c WHERE c.syncUnitPkId = :Id "),    
    @NamedQuery(name = "SyncCostPropunit.findByPlant", query = " SELECT c FROM SyncCostPropunit c WHERE c.buildingPhase = :buildingPhase And c.sapPlantCode = :sapPlantCode "),
    @NamedQuery(name = "SyncCostPropunit.findByPlantStaging", query = " SELECT c FROM SyncCostPropunit c WHERE c.syncIsstaging = :syncIsstaging And c.buildingPhase = :buildingPhase And c.sapPlantCode = :sapPlantCode "),
    @NamedQuery(name = "SyncCostPropunit.findByPlantStagingNoBul", query = " SELECT c FROM SyncCostPropunit c WHERE c.sapPlantCode = :sapPlantCode "),
    @NamedQuery(name = "SyncCostPropunit.findByPlantStagingWithoutIsSync", query = " SELECT c FROM SyncCostPropunit c WHERE c.buildingPhase = :buildingPhase And c.sapPlantCode = :sapPlantCode "),
    @NamedQuery(name = "SyncCostPropunit.findBySyncIsStaging", query = " SELECT c FROM SyncCostPropunit c WHERE  c.syncIsstaging = :syncIsstaging "),
    @NamedQuery(name = "SyncCostPropunit.findByCompany", query = " SELECT c FROM SyncCostPropunit c WHERE  c.syncIsstaging = :syncIsstaging And c.company = :company "),
    @NamedQuery(name = "SyncCostPropunit.findByProject", query = " SELECT c FROM SyncCostPropunit c WHERE  c.syncIsstaging = :syncIsstaging And c.company = :company And c.project = :project "),
    @NamedQuery(name = "SyncCostPropunit.findByBuilding", query = " SELECT c FROM SyncCostPropunit c WHERE  c.syncIsstaging = :syncIsstaging And c.company = :company And c.project = :project And c.buildingPhase = :buildingPhase"),
    @NamedQuery(name = "SyncCostPropunit.findByZone", query = " SELECT c FROM SyncCostPropunit c WHERE  c.syncIsstaging = :syncIsstaging And c.company = :company And c.project = :project And c.buildingPhase = :buildingPhase And c.zoneCode = :zoneCode "),
    @NamedQuery(name = "SyncCostPropunit.findByUnitNumber", query = " SELECT c FROM SyncCostPropunit c WHERE  c.company = :company And c.project = :project And c.buildingPhase = :buildingPhase And c.zoneCode = :zoneCode And c.unitNumber = :unitNumber"),
    @NamedQuery(name = "SyncCostPropunit.findByUnitNumber1", query = " SELECT c FROM SyncCostPropunit c WHERE  c.company = :company And c.project = :project And c.buildingPhase = :buildingPhase And c.zoneCode = :zoneCode And c.unitNumber = :unitNumber And c.syncIsstaging = :syncIsstaging"),
    @NamedQuery(name = "SyncCostPropunit.findByUnitNumber2", query = " SELECT c FROM SyncCostPropunit c WHERE  c.company = :company And c.project = :project And c.buildingPhase = :buildingPhase"),
    @NamedQuery(name = "SyncCostPropunit.findByUnitNumber3", query = " SELECT c FROM SyncCostPropunit c WHERE  c.company = :company And c.project = :project And c.buildingPhase = :buildingPhase And c.zoneCode = :zoneCode ")
})
public class SyncCostPropunit extends CommonEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	
	@Column(length=200)
	private String id;
	
	@Column(name="BUILDING_PHASE", length=30)
	private String buildingPhase;
	
	@Id
	@Column(name="SYNC_UNIT_PK_ID", length=100)
	private String syncUnitPkId;
	
	@Override public String toString() { return org.apache.commons.lang.builder.ToStringBuilder.reflectionToString(this);}

	@Column(name="BUILDING_PHASE_NAME", length=300)
	private String buildingPhaseName;

	@Column(length=30)
	private String company;

	@Column(name="COMPANY_NAME", length=300)
	private String companyName;

	@Column(name="CREATED_BY")
	private String createdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="CREATED_ON")
	private Date createdOn;

	@Column(length=300)
	private String description;	

	@Column(name="LAST_UPD_BY")
	private String lastUpdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="LAST_UPD_ON")
	private Date lastUpdOn;

	@Column(name="MODEL_CODE", length=30)
	private String modelCode;

	@Column(name="MODEL_NAME", length=300)
	private String modelName;
	
	@Column(name="MODEL_REVISION")
	private BigDecimal modelRevision;
	
	@Column(name="MODEL_SUB_REVISION")
	private BigDecimal modelSubRevision;	

	@Column(length=30)
	private String project;

	@Column(name="PROJECT_NAME", length=300)
	private String projectName;

	@Column(name="PROPERTY_TYPE_CODE", length=30)
	private String propertyTypeCode;

	@Column(name="PROPERTY_TYPE_NAME", length=300)
	private String propertyTypeName;

	@Column(name="SAP_COMPANY_CODE", length=4)
	private String sapCompanyCode;

	@Column(name="SAP_PLANT_CODE", length=4)
	private String sapPlantCode;

	@Column(name="SEQ_NO", precision=22)
	private BigDecimal seqNo;

	@Column(name="SYNC_CREATEDBY", length=100)
	private String syncCreatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_CREATEDON")
	private Date syncCreatedon;

	@Column(name="SYNC_EXTERNAL_REF_KEY", length=100)
	private String syncExternalRefKey;

	@Column(name="SYNC_EXTERNAL_REF_NO", length=100)
	private String syncExternalRefNo;

	@Column(name="SYNC_ISSTAGING", length=1)
	private String syncIsstaging;

	@Column(name="SYNC_ISSYNC", length=1)
	private String syncIssync;

	@Column(name="SYNC_UPDATEDBY", length=100)
	private String syncUpdatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_UPDATEDON")
	private Date syncUpdatedon;

	@Column(name="UNIT_NUMBER", length=30)
	private String unitNumber;

	@Column(name="UNIT_TYPE", length=1)
	private String unitType;

	@Column(name="ZONE_CODE", length=30)
	private String zoneCode;

	@Column(name="ZONE_CODE_NAME", length=300)
	private String zoneCodeName;
	
	@Column(name="PRODUCT_CODE", length=30)
	private String productCode;
	
	@Column(name="PRODUCT_NAME", length=300)
	private String productName;
	
	@Column(name="CONS_STATUS")
	private String consStatus;
	
	@Column(name="CONS_STATUS_NAME")
	private String consStatusName;
	
	@Column(name="SALE_STATUS")
	private String salesStatus;	

	@Column(name="SALE_STATUS_NAME")
	private String salesStatusName;
	
	@Column(name="PHASE_CODE", length=30)
	private String phaseCode;
	
	@Column(name="EIA_NUMBER", length=100)
	private String eiaNumber;
	
	@Column(name="AREA")
	private BigDecimal area;
	
	@Column(name="HOUSE_NO")
	private String houseNo;
	
	@Column(name="FINAL_AREA")
	private BigDecimal finalArea;
	
	@Column(name="CONS_SALE_STATUS")
	private String consSaleStatus;
	
	@Column(name="CONS_SALE_STATUS_NAME")
	private String consSaleStatusName;
	
	@Column(name="ORIGIN_LAND_SQW")
	private BigDecimal originLandSqw;
	
	@Column(name="LAND_SQW")
	private BigDecimal landSqw;
	
	@Column(name="ACTUAL_SALE_AREA")
	private BigDecimal actualSaleArea;
	
    /**
	 * @return the originLandSqw
	 */
	public BigDecimal getOriginLandSqw() {
		return originLandSqw;
	}

	/**
	 * @param originLandSqw the originLandSqw to set
	 */
	public void setOriginLandSqw(BigDecimal originLandSqw) {
		this.originLandSqw = originLandSqw;
	}
	
	/**
	 * @return the landSqw
	 */
	public BigDecimal getLandSqw() {
		return landSqw;
	}

	/**
	 * @param landSqw the landSqw to set
	 */
	public void setLandSqw(BigDecimal landSqw) {
		this.landSqw = landSqw;
	}

	/**
	 * @return the actualSaleArea
	 */
	public BigDecimal getActualSaleArea() {
		return actualSaleArea;
	}

	/**
	 * @param actualSaleArea the actualSaleArea to set
	 */
	public void setActualSaleArea(BigDecimal actualSaleArea) {
		this.actualSaleArea = actualSaleArea;
	}

	/**
	 * @return the syncUnitPkId
	 */
	public String getSyncUnitPkId() {
		return syncUnitPkId;
	}

	/**
	 * @param syncUnitPkId the syncUnitPkId to set
	 */
	public void setSyncUnitPkId(String syncUnitPkId) {
		this.syncUnitPkId = syncUnitPkId;
	}

	/**
	 * @return the consSaleStatus
	 */
	public String getConsSaleStatus() {
		return consSaleStatus;
	}

	/**
	 * @param consSaleStatus the consSaleStatus to set
	 */
	public void setConsSaleStatus(String consSaleStatus) {
		this.consSaleStatus = consSaleStatus;
	}

	/**
	 * @return the consSaleStatusName
	 */
	public String getConsSaleStatusName() {
		return consSaleStatusName;
	}

	/**
	 * @param consSaleStatusName the consSaleStatusName to set
	 */
	public void setConsSaleStatusName(String consSaleStatusName) {
		this.consSaleStatusName = consSaleStatusName;
	}

	/**
	 * @return the area
	 */
	public BigDecimal getArea() {
		return area;
	}

	/**
	 * @param area the area to set
	 */
	public void setArea(BigDecimal area) {
		this.area = area;
	}

	/**
	 * @return the houseNo
	 */
	public String getHouseNo() {
		return houseNo;
	}

	/**
	 * @param houseNo the houseNo to set
	 */
	public void setHouseNo(String houseNo) {
		this.houseNo = houseNo;
	}

	/**
	 * @return the finalArea
	 */
	public BigDecimal getFinalArea() {
		return finalArea;
	}

	/**
	 * @param finalArea the finalArea to set
	 */
	public void setFinalArea(BigDecimal finalArea) {
		this.finalArea = finalArea;
	}

	/**
	 * @return the modelSubRevision
	 */
	public BigDecimal getModelSubRevision() {
		return modelSubRevision;
	}

	/**
	 * @param modelSubRevision the modelSubRevision to set
	 */
	public void setModelSubRevision(BigDecimal modelSubRevision) {
		this.modelSubRevision = modelSubRevision;
	}

	/**
	 * @return the phaseCode
	 */
	public String getPhaseCode() {
		return phaseCode;
	}

	/**
	 * @param phaseCode the phaseCode to set
	 */
	public void setPhaseCode(String phaseCode) {
		this.phaseCode = phaseCode;
	}

	/**
	 * @return the eiaNumber
	 */
	public String getEiaNumber() {
		return eiaNumber;
	}

	/**
	 * @param eiaNumber the eiaNumber to set
	 */
	public void setEiaNumber(String eiaNumber) {
		this.eiaNumber = eiaNumber;
	}

	public SyncCostPropunit() {
    }   
    
	/**
	 * @return the modelRevision
	 */
	public BigDecimal getModelRevision() {
		return modelRevision;
	}


	/**
	 * @param modelRevision the modelRevision to set
	 */
	public void setModelRevision(BigDecimal modelRevision) {
		this.modelRevision = modelRevision;
	}

	/**
	 * @return the consStatusName
	 */
	public String getConsStatusName() {
		return consStatusName;
	}


	/**
	 * @param consStatusName the consStatusName to set
	 */
	public void setConsStatusName(String consStatusName) {
		this.consStatusName = consStatusName;
	}

	/**
	 * @return the salesStatusName
	 */
	public String getSalesStatusName() {
		return salesStatusName;
	}

	/**
	 * @param salesStatusName the salesStatusName to set
	 */
	public void setSalesStatusName(String salesStatusName) {
		this.salesStatusName = salesStatusName;
	}

	/**
	 * @return the consStatus
	 */
	public String getConsStatus() {
		return consStatus;
	}

	/**
	 * @param consStatus the consStatus to set
	 */
	public void setConsStatus(String consStatus) {
		this.consStatus = consStatus;
	}

	/**
	 * @return the salesStatus
	 */
	public String getSalesStatus() {
		return salesStatus;
	}

	/**
	 * @param salesStatus the salesStatus to set
	 */
	public void setSalesStatus(String salesStatus) {
		this.salesStatus = salesStatus;
	}

	/**
	 * @return the productCode
	 */
	public String getProductCode() {
		return productCode;
	}



	/**
	 * @param productCode the productCode to set
	 */
	public void setProductCode(String productCode) {
		this.productCode = productCode;
	}



	/**
	 * @return the productName
	 */
	public String getProductName() {
		return productName;
	}



	/**
	 * @param productName the productName to set
	 */
	public void setProductName(String productName) {
		this.productName = productName;
	}



	public String getBuildingPhase() {
		return this.buildingPhase;
	}

	public void setBuildingPhase(String buildingPhase) {
		this.buildingPhase = buildingPhase;
	}

	public String getBuildingPhaseName() {
		return this.buildingPhaseName;
	}

	public void setBuildingPhaseName(String buildingPhaseName) {
		this.buildingPhaseName = buildingPhaseName;
	}

	public String getCompany() {
		return this.company;
	}

	public void setCompany(String company) {
		this.company = company;
	}

	public String getCompanyName() {
		return this.companyName;
	}

	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}

	public String getCreatedBy() {
		return this.createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	public Date getCreatedOn() {
		return this.createdOn;
	}

	public void setCreatedOn(Date createdOn) {
		this.createdOn = createdOn;
	}

	public String getDescription() {
		return this.description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public String getId() {
		return this.id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getLastUpdBy() {
		return this.lastUpdBy;
	}

	public void setLastUpdBy(String lastUpdBy) {
		this.lastUpdBy = lastUpdBy;
	}

	public Date getLastUpdOn() {
		return this.lastUpdOn;
	}

	public void setLastUpdOn(Date lastUpdOn) {
		this.lastUpdOn = lastUpdOn;
	}

	public String getModelCode() {
		return this.modelCode;
	}

	public void setModelCode(String modelCode) {
		this.modelCode = modelCode;
	}

	public String getModelName() {
		return this.modelName;
	}

	public void setModelName(String modelName) {
		this.modelName = modelName;
	}

	public String getProject() {
		return this.project;
	}

	public void setProject(String project) {
		this.project = project;
	}

	public String getProjectName() {
		return this.projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public String getPropertyTypeCode() {
		return this.propertyTypeCode;
	}

	public void setPropertyTypeCode(String propertyTypeCode) {
		this.propertyTypeCode = propertyTypeCode;
	}

	public String getPropertyTypeName() {
		return this.propertyTypeName;
	}

	public void setPropertyTypeName(String propertyTypeName) {
		this.propertyTypeName = propertyTypeName;
	}

	public String getSapCompanyCode() {
		return this.sapCompanyCode;
	}

	public void setSapCompanyCode(String sapCompanyCode) {
		this.sapCompanyCode = sapCompanyCode;
	}

	public String getSapPlantCode() {
		return this.sapPlantCode;
	}

	public void setSapPlantCode(String sapPlantCode) {
		this.sapPlantCode = sapPlantCode;
	}

	public BigDecimal getSeqNo() {
		return this.seqNo;
	}

	public void setSeqNo(BigDecimal seqNo) {
		this.seqNo = seqNo;
	}

	public String getSyncCreatedby() {
		return this.syncCreatedby;
	}

	public void setSyncCreatedby(String syncCreatedby) {
		this.syncCreatedby = syncCreatedby;
	}

	public Date getSyncCreatedon() {
		return this.syncCreatedon;
	}

	public void setSyncCreatedon(Date syncCreatedon) {
		this.syncCreatedon = syncCreatedon;
	}

	public String getSyncExternalRefKey() {
		return this.syncExternalRefKey;
	}

	public void setSyncExternalRefKey(String syncExternalRefKey) {
		this.syncExternalRefKey = syncExternalRefKey;
	}

	public String getSyncExternalRefNo() {
		return this.syncExternalRefNo;
	}

	public void setSyncExternalRefNo(String syncExternalRefNo) {
		this.syncExternalRefNo = syncExternalRefNo;
	}

	public String getSyncIsstaging() {
		return this.syncIsstaging;
	}

	public void setSyncIsstaging(String syncIsstaging) {
		this.syncIsstaging = syncIsstaging;
	}

	public String getSyncIssync() {
		return this.syncIssync;
	}

	public void setSyncIssync(String syncIssync) {
		this.syncIssync = syncIssync;
	}

	public String getSyncUpdatedby() {
		return this.syncUpdatedby;
	}

	public void setSyncUpdatedby(String syncUpdatedby) {
		this.syncUpdatedby = syncUpdatedby;
	}

	public Date getSyncUpdatedon() {
		return this.syncUpdatedon;
	}

	public void setSyncUpdatedon(Date syncUpdatedon) {
		this.syncUpdatedon = syncUpdatedon;
	}

	public String getUnitNumber() {
		return this.unitNumber;
	}

	public void setUnitNumber(String unitNumber) {
		this.unitNumber = unitNumber;
	}

	public String getUnitType() {
		return this.unitType;
	}

	public void setUnitType(String unitType) {
		this.unitType = unitType;
	}

	public String getZoneCode() {
		return this.zoneCode;
	}

	public void setZoneCode(String zoneCode) {
		this.zoneCode = zoneCode;
	}

	public String getZoneCodeName() {
		return this.zoneCodeName;
	}

	public void setZoneCodeName(String zoneCodeName) {
		this.zoneCodeName = zoneCodeName;
	}

}